/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package busquedas;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;

import javax.swing.DefaultListModel;

import programita.AdminDeDatos;
import programita.Alumno;
import programita.Tutor;

/**
 *
 * @author educacionit
 */
public class Busquedas {
    public static ArrayList<Alumno> buscarNombre(String nombre) {

	    Connection c = null;

	    ArrayList<Alumno> coleccionAlumnos= new ArrayList<Alumno>();

	    try {

	        c = AdminDeDatos.getInstance().getConnection();
	        String laConsulta = "SELECT * FROM Alumnos";
	        Statement stmtConsulta = c.createStatement();
	        ResultSet rs = stmtConsulta.executeQuery(laConsulta);

	        while (rs.next()) {
	            //System.out.println("Nombre: " + rs.getString("nombre") + " -- " + "Apellido: " + rs.getString("contrasenia"));
	            if (rs.getString("Nombre").compareTo(nombre) == 0) {

	            	Alumno fulanito= new Alumno();


	            	fulanito.setNombre(nombre);
	            	fulanito.setApellido( rs.getString("Apellido"));
	            	fulanito.setGrado(rs.getInt("Grado"));
                        fulanito.setId(rs.getInt("id_Alu"));
                        fulanito.setDivision(rs.getString("Div"));
                        coleccionAlumnos.add(fulanito);
	            	//Esto hacerlo en la misma ventana
	            	//lista.addElement(fulanito);


	            }

	        }
                AdminDeDatos.getInstance().releaseConnection(c);
	    } catch (Exception e) {
	        e.printStackTrace();

            }

	return coleccionAlumnos;

   }
        public static ArrayList<Alumno> buscarApellido(String apellido) {

	    Connection c = null;

	    ArrayList<Alumno> coleccionAlumnos= new ArrayList<Alumno>();

	    try {

	        c = AdminDeDatos.getInstance().getConnection();
	        String laConsulta = "SELECT * FROM Alumnos";
	        Statement stmtConsulta = c.createStatement();
	        ResultSet rs = stmtConsulta.executeQuery(laConsulta);

	        while (rs.next()) {
	            //System.out.println("Nombre: " + rs.getString("nombre") + " -- " + "Apellido: " + rs.getString("contrasenia"));
	            if (rs.getString("Apellido").compareTo(apellido) == 0) {

	            	Alumno fulanito= new Alumno();


	            	fulanito.setNombre(rs.getString("Nombre"));
	            	fulanito.setApellido(apellido);
	            	fulanito.setGrado(rs.getInt("Grado"));
                        fulanito.setId(rs.getInt("id_Alu"));
                        fulanito.setDivision(rs.getString("Div"));
                        coleccionAlumnos.add(fulanito);
	            	//Esto hacerlo en la misma ventana
	            	//lista.addElement(fulanito);


	            }

	        }
                AdminDeDatos.getInstance().releaseConnection(c);
	    } catch (Exception e) {
	        e.printStackTrace();

            }
	return coleccionAlumnos;

   }

     public static ArrayList<Alumno> buscarCurso(int Grado,String Division) {
//  ACORDARSE DE QUE EN CVASO DE QUE SEA SALA REC ES 0 la division
	    Connection c = null;

	    ArrayList<Alumno> coleccionAlumnos= new ArrayList<Alumno>();

	    try {

	        c = AdminDeDatos.getInstance().getConnection();
	        String laConsulta = "SELECT * FROM Alumnos WHERE Grado ="+Grado+" AND Div ='"+Division+"'";
	        Statement stmtConsulta = c.createStatement();
	        ResultSet rs = stmtConsulta.executeQuery(laConsulta);

	        while (rs.next()) {
	            //System.out.println("Nombre: " + rs.getString("nombre") + " -- " + "Apellido: " + rs.getString("contrasenia"));
	            //if (rs.getInt("Grado")== Grado) {

	            	Alumno fulanito= new Alumno();


	            	fulanito.setNombre(rs.getString("Nombre"));
	            	fulanito.setApellido( rs.getString("Apellido"));
	            	fulanito.setGrado(rs.getInt("Grado"));
                        fulanito.setId(rs.getInt("id_Alu"));
                        fulanito.setDivision(rs.getString("Div"));
                        coleccionAlumnos.add(fulanito);
	            	//Esto hacerlo en la misma ventana
	            	//lista.addElement(fulanito);


	        //    }

	        }
                AdminDeDatos.getInstance().releaseConnection(c);
	    } catch (Exception e) {
	        e.printStackTrace();

            }
	return coleccionAlumnos;

   }
     public static ArrayList<Tutor> buscarTutor(int id) {

	    Connection c = null;

	    ArrayList<Tutor> coleccion= new ArrayList<Tutor>();

	    try {

	        c = AdminDeDatos.getInstance().getConnection();
	        String laConsulta = "SELECT * FROM Tutores WHERE id_Alu ="+id;
	        Statement stmtConsulta = c.createStatement();
	        ResultSet rs = stmtConsulta.executeQuery(laConsulta);

	        while (rs.next()) {
	            	Tutor fulanito= new Tutor(rs.getString("Nombre"), rs.getString("Apellido"));

                        coleccion.add(fulanito);


	        }
                AdminDeDatos.getInstance().releaseConnection(c);
	    } catch (Exception e) {
	        e.printStackTrace();

            }
	return coleccion;

   }
          public static ArrayList<Alumno> buscarCursoIngles(int Grado,String Division) throws SQLException {
//  ACORDARSE DE QUE EN CVASO DE QUE SEA SALA REC ES 0 la division
	    Connection c = null;

	    ArrayList<Alumno> coleccionAlumnos= new ArrayList<Alumno>();

	    try {

	        c = AdminDeDatos.getInstance().getConnection();
	        String laConsulta = "SELECT * FROM Alumnos WHERE Grado ="+Grado+" AND Turno ='"+Division+"'";
	        Statement stmtConsulta = c.createStatement();
	        ResultSet rs = stmtConsulta.executeQuery(laConsulta);

	        while (rs.next()) {
	            //System.out.println("Nombre: " + rs.getString("nombre") + " -- " + "Apellido: " + rs.getString("contrasenia"));
	            //if (rs.getInt("Grado")== Grado) {

	            	Alumno fulanito= new Alumno();


	            	fulanito.setNombre(rs.getString("Nombre"));
	            	fulanito.setApellido( rs.getString("Apellido"));
	            	fulanito.setGrado(rs.getInt("Grado"));
                        fulanito.setId(rs.getInt("id_Alu"));
                        fulanito.setDivision(Division);
                        coleccionAlumnos.add(fulanito);
	            	//Esto hacerlo en la misma ventana
	            	//lista.addElement(fulanito);


	        //    }

	        }
                AdminDeDatos.getInstance().releaseConnection(c);
	    } catch (Exception e) {
	        e.printStackTrace();

            }
           
	return coleccionAlumnos;

   }
          public static ArrayList<Alumno> buscarCursoSalaRecup(int Grado) {
//  ACORDARSE DE QUE EN CVASO DE QUE SEA SALA REC ES 0 la division
	    Connection c = null;

	    ArrayList<Alumno> coleccionAlumnos= new ArrayList<Alumno>();

	    try {

	        c = AdminDeDatos.getInstance().getConnection();
	        String laConsulta = "SELECT * FROM Alumnos WHERE Grado ="+Grado;
	        Statement stmtConsulta = c.createStatement();
	        ResultSet rs = stmtConsulta.executeQuery(laConsulta);

	        while (rs.next()) {
	            //System.out.println("Nombre: " + rs.getString("nombre") + " -- " + "Apellido: " + rs.getString("contrasenia"));
	            //if (rs.getInt("Grado")== Grado) {

	            	Alumno fulanito= new Alumno();


	            	fulanito.setNombre(rs.getString("Nombre"));
	            	fulanito.setApellido( rs.getString("Apellido"));
	            	fulanito.setGrado(rs.getInt("Grado"));
                        fulanito.setId(rs.getInt("id_Alu"));
                        fulanito.setDivision(rs.getString("Div"));
                        coleccionAlumnos.add(fulanito);
	            	//Esto hacerlo en la misma ventana
	            	//lista.addElement(fulanito);


	        //    }

	        }
                AdminDeDatos.getInstance().releaseConnection(c);
	    } catch (Exception e) {
	        e.printStackTrace();

            }
	return coleccionAlumnos;

   }



//      public static ArrayList<Alumno> buscarCursoINGLES(int Grado,String Division,String turno) {
//
//	    Connection c = null;
//
//	    ArrayList<Alumno> coleccionAlumnos= new ArrayList<Alumno>();
//
//	    try {
//
//	        c = AdminDeDatos.getInstance().getConnection();
//	        String laConsulta = "SELECT * FROM Alumnos WHERE Grado ="+Grado+" AND Turno ='"+turno+"'";
//	        Statement stmtConsulta = c.createStatement();
//	        ResultSet rs = stmtConsulta.executeQuery(laConsulta);
//
//	        while (rs.next()) {
//	            //System.out.println("Nombre: " + rs.getString("nombre") + " -- " + "Apellido: " + rs.getString("contrasenia"));
//	            //if (rs.getInt("Grado")== Grado) {
//
//	            	Alumno fulanito= new Alumno();
//
//
//	            	fulanito.setNombre(rs.getString("Nombre"));
//	            	fulanito.setApellido( rs.getString("Apellido"));
//	            	fulanito.setGrado(rs.getInt("Grado"));
//                        fulanito.setId(rs.getInt("id_Alu"));
//                        fulanito.setDivision(rs.getString("Div"));
//                        coleccionAlumnos.add(fulanito);
//	            	//Esto hacerlo en la misma ventana
//	            	//lista.addElement(fulanito);
//
//
//	        //    }
//
//	        }
//	    } catch (Exception e) {
//	        e.printStackTrace();
//
//            }
//	return coleccionAlumnos;
//
//   }



}
